Systems and methods for marketplace listings using  a camera enabled mobile device

ABSTRACT

Computer-implemented systems and methods for generating marketplace listings using a camera enabled mobile device are described in which a request is received via a camera enabled mobile device to list one or more sale items. An image taken by the camera enable mobile device and depicting the one or more sale items is received. Image recognition is performed on the received image to identify the one or more sale items. Based on the identification of the one or more sale items depicted in the image, a set of descriptive data is automatically generated. The one or more sale items are listed on a marketplace using the image and the automatically generated set of descriptive data.

CROSS-REFERENCE TO RELATED APPLICATIONS

The present patent application is a continuation of U.S. patentapplication Ser. No. 12/262,012, filed Oct. 30, 2008, and entitled“System and Methods for Marketplace Listings Using a Camera EnabledMobile Device,” which application is incorporated herein by reference inits entirety.

FIELD

This application relates generally to data processing, and morespecifically to systems and methods for marketplace listings using acamera enabled mobile device.

COPYRIGHT NOTICE

A portion of the disclosure of this patent document contains materialthat is subject to copyright protection. The copyright owner has noobjection to the facsimile reproduction by anyone of the patent documentor the patent disclosure, as it appears in the Patent and TrademarkOffice patent files or records, but otherwise reserves all copyrightrights whatsoever. The following notice applies to the software and dataas described below and in the drawings that form a part of thisdocument: Copyright 2008, EBAY, INC., All Rights Reserved.

BACKGROUND

The approaches described in this section could be pursued, but are notnecessarily approaches that have been previously conceived or pursued.Therefore, unless otherwise indicated herein, the approaches describedin this section are not prior art to the claims in this application andare not admitted to be prior art by inclusion in this section.

Camera enabled mobile devices (such as cellular telephones) have becomevery popular in recent years. A camera enabled mobile device may becapable of communicating data (e.g., an image file) over wireless datanetworks.

BRIEF DESCRIPTION OF DRAWINGS

Embodiments are illustrated by way of example and not limitation in thefigures of the accompanying drawings, in which like references indicatesimilar elements and in which:

FIG. 1 is a block diagram illustrating an architecture within whichsystems and methods for marketplace listings using a camera enabledmobile device may be implemented, in accordance with an exampleembodiment;

FIG. 2 is a block diagram showing a multiple listing engine, inaccordance with an example embodiment;

FIG. 3 is a block diagram showing back and front views of a cameraenabled mobile device, in accordance with an example embodiment;

FIG. 4 is screenshots showing marketplace listings displayed on a cameraenabled mobile device, in accordance with an example embodiment;

FIG. 5 is a flow chart illustrating a method for marketplace listingsusing a camera enabled mobile device, in accordance with an exampleembodiment;

FIG. 6 is the first part of a flow chart illustrating a further methodfor marketplace listings using a camera enabled mobile device, inaccordance with an example embodiment;

FIG. 7 is the second part of a flow chart illustrating a further methodfor marketplace listings using a camera enabled mobile device, inaccordance with an example embodiment; and

FIG. 8 is a diagrammatic representation illustrating an example machinein the form of a computer system within which a set of instructions forcausing the machine to perform any one or more of the methodologiesdiscussed herein may be executed.

DETAILED DESCRIPTION

For some example embodiments, systems and methods for creatingmarketplace listings using a camera enabled mobile device are disclosed.One example embodiment may comprise receiving a request via a cameraenabled mobile device to list one or more sale items, receiving imageshaving the one or more sale items, the images being taken by the cameraenabled mobile device, receiving data associated with the one or moresale items, and based on the data, listing the one or more sale items ona marketplace

The following detailed description includes references to theaccompanying drawings, which form a part of the detailed description.The drawings show illustrations in accordance with example embodiments.These example embodiments, which are also referred to herein as“examples,” are described in enough detail to enable those skilled inthe art to practice the present subject matter. The embodiments may becombined, other embodiments may be utilized, or structural, logical andelectrical changes may be made without departing from the scope of whatis claimed. The following detailed description is, therefore, not to betaken in a limiting sense, and the scope is defined by the appendedclaims and their equivalents.

In this document, the terms “a” or “an” are used, as is common in patentdocuments, to include one or more than one. In this document, the term“or” is used to refer to a nonexclusive “or,” such that “A or B”includes “A but not B,” “B but not A,” and “A and B,” unless otherwiseindicated. Furthermore, all publications, patents, and patent documentsreferred to in this document are incorporated by reference herein intheir entirety, as though individually incorporated by reference. In theevent of inconsistent usages between this document and those documentsso incorporated by reference, the usage in the incorporated reference(s)should be considered supplementary to that of this document; forirreconcilable inconsistencies, the usage in this document controls.

A camera enabled mobile device may include a mobile Operating System(OS) run on a hardware platform adapted for the OS. A camera enabledmobile device may include a Graphical User Interface (GUI), which may bebased on the concept of direct manipulation of a touch screen monitorwith gestures. The GUI may permit a nearly instantaneous response touser input. The gestures for interaction with the mobile OS may includeswiping, tapping, pinching, and/or reverse pinching.

For some example embodiments, systems and methods for marketplacelistings using a camera enabled mobile device may permit a user to takeone or more pictures illustrating items to be listed on a marketplaceand provide data related to the pictures. The data may be utilized totag the items to be listed. The items may be extracted from thepictures, tagged with the data and listed at the same time. A softwareapplication running on the camera enabled mobile device may utilize richmedia technology to enable a user to take multiple pictures of variousitems or a single picture of a group of multiple items, tag the itemswith data, and list the items for sale on a marketplace. In some exampleembodiments, a draft area may be utilized as an intermediary stage forimages and data to be collected over a period of time before the data isassociated with the items in the images and listed on a marketplace.

FIG. 1 illustrates a network environment 100 that may include a network110, a multiple listing engine 120, a camera enabled mobile device 130,a user 140, and an electronic marketplace 150. The network 110 maycomprise a plurality of data processing nodes interconnected for thepurpose of data communication. The camera enabled mobile device 130 maycomprise a camera coupled to a mobile device. The camera enabled mobiledevice 130, in some example embodiments, may include a Graphical Userinterface (GUI) which may be manipulated by gestures of a user 140'shand. In a typical GUI, instead of offering only text menus or requiringtyped commands, the system presents graphical icons, visual indicatorsor special graphical elements called widgets that may be utilized toallow the user to interact with client applications. The camera enabledmobile device 130 may be configured to utilize icons in conjunction withtext, labels or text navigation to fully represent the information andactions available to users. Example GUI and client applications aredescribed in more detail with reference to FIG. 3.

The user 140 is a person interacting with the camera enabled mobiledevice 130 via the GUI. In some other embodiments, the user 140 may berepresented by an automated process designed to simulate a personoperating the camera enabled device 130. The electronic marketplace 150,in the context of the example network environment 100, may be an onlineauction and fixed price shopping website configured to permit individualusers and businesses to buy and sell goods and services (e.g., eBay).The electronic marketplace 150 may be a part of the worldwide electroniccommerce which includes buying and selling of products or services overelectronic systems such as the Internet and other computer networks. Themultiple listing engine 120, in some example embodiments, may includevarious components facilitating listing of items for sale. A system formarketplace listings using a camera enabled mobile device 200 isdescribed by way of example with reference to FIG. 2.

FIG. 2 is a block diagram showing the system for marketplace listingsusing a camera enabled mobile device in accordance with an exampleembodiment. The system for marketplace listings using a camera enabledmobile device in some example embodiments may include a communicationmodule 202 coupled to a multiple listing engine 120. The system formarketplace listings using a camera enabled mobile device may furtherinclude sale items 204, a bar code 206, images 208, and a database 210.

The communication module 202, in some example embodiments, may beconfigured to receive a request from the camera enabled mobile device130 to list one or more the sale items 204 selected by a user from theimages 208. For some example embodiments, user interaction may not beneeded because the sale items 204 are selected based on predetermineddefault criteria. The communication module 202 may be coupled to themultiple listing engine 120, which in turn includes a media receivingmodule 122, a processing module 124, and a data receiving module 126.

The media receiving module 122, in some example embodiments, may beconfigured to receive the images 208. The images 208 may be taken by theuser 140 operating the camera enabled mobile device 130. The images 208may include the sale items 204. For example, the user 140 may be willingto sell multiple items located in his garage. The user 140 may utilizethe camera enabled mobile device 130 to take the images 208 in hisgarage so that each image includes a plurality of the sale items 204.The data receiving module 126 may be configured to receive dataassociated with the sale items 204. The data may be provided by the user140 or created automatically based on the images 208.

The processing module 124, in some example embodiments, may beconfigured to list the sale items 204 for sale. The sale items 204 areextracted from the images 208 received by the media receiving module 122and the data received by the data receiving module 126. The processingmodule 124, in some example embodiments, may be configured to providedefault data when no data is provided by the user. For example, if theuser 140 provides no data and the sale items 204 are of low value, theprocessing module 124 may associate the sale items 204 with defaultdata. For some example embodiments, the sale items 204 may be classifiedautomatically with help of image recognition technology. Additionally, alight weight listing process may be utilized in which the user 140 maybe provided with a few options. This approach may provide the multiplelisting engine 120 with the data sufficient to list the sale item 204.

The database 210, in some example embodiments, may be configured as astructured collection of records or data that is stored in a computersystem which a computer program or a person using a query language mayconsult to answer queries. The records retrieved in answer to queriesare information that can be used to make decisions. The database 210 maystore the images 208 as well as the sale items 204. The sale items 204may include goods and/or services which are shown in the images 208provided by the camera enabled mobile device 130 and listed on themarketplace 150 by the multiple listing engine 120.

For some example embodiments, the bar code 206 may be utilized toprovide the data needed for the sale items 204 to be listed on themarketplace 150. The bar code 206 may be, for example, a UniversalProduct Code (UPC), which is widely used for tracking sale items 204.Thus an image of the bar code 206 may be utilized to generate tagsdescribing the sale items 204. The images 208, in some exampleembodiments, are photographs of the sale items 204. Each image of theimages 208 may include more than one item.

FIG. 3 is a block diagram 300 showing back and front views of the cameraenabled mobile device 130, in accordance with an example embodiment. Thecamera enabled mobile device 130, in some example embodiments, includesa receiver 301, a speaker 302, and a touch screen 304. The touch screen304 may display a GUI, which in turn includes application icons 308. Thecamera enabled mobile device 130 may further include a home button 306and a camera 310, which is shown on the back view of the camera enabledmobile device 130 but may, as well, be located in the front. Also shownis a hand 312 of the user 140 which may operate the camera enabledmobile device 130 by manipulating the camera enabled mobile device 130through gestures of the hand 312.

For some example embodiment, because the camera enabled mobile device130 has native camera integration, the user 140 may utilize the cameraenabled mobile device 130 for various applications adapted to takeadvantage of this functionality. For example, a user 140 may take apicture of the bar code 206 associated with a sale item. An applicationadapted to read the bar code 206 may determine generated datadescriptive of the sale item based on the picture of the bar code 206.The data may be utilized in listing of the item by the multiple listingengine 120 or in a search for similar items on the marketplace 150. Thenthe search results may be analyzed and displayed (e.g., average price ofthe product). The search result may be utilized in tagging the saleitems 204.

In some example embodiments, the camera enabled mobile device 130 maypermit listing of the sale items 204 based on an image of the item and aminimal description. In some example embodiments, in order for the user140 to receive data, the user may be offered a selection of choices. Infurther example embodiments, before the sale items 204 are listed on themarketplace 150, the images 208 and related data are compiled in apersonal draft area. Thus, the user 140 may take a picture, add sometags to the picture, and then place the picture and the tags in thepersonal draft area.

The receiver 301 may be a device for converting sound into electricsignals and vice versa. The touch screen 304, in some exampleembodiments, is a display which may detect the presence and location ofa touch within the display area. The touch screen 304 may be operated bytouch or contact to the display of the device by a finger or hand. Insome example embodiments, the touch screen 304 may sense other objects,such as a stylus. The home button 306, in some example embodiments, maybe a button that permits a user to see the icons 308. The icons 308 maybe utilized to start software applications installed on the cameraenabled mobile device 130.

A web application running on the camera enabled mobile device 130 is anexample of a software application that may be started with one of theicons 308. A web application running on the camera enabled mobile device130 may employ generic web technologies that do not take advantage ofthe native capabilities of the camera enabled mobile device 130. The webapplication may also mix HyperText Markup Language (HTML) content withnative content. Further example applications running on the cameraenabled mobile device 130 may be designed for instant notifications orreal time alerts of users of the camera enabled mobile device 130.Camera 310 is a device used to capture images, either as stiltphotographs or as sequences of moving images (movies or videos).

FIG. 4 illustrates several screenshots showing marketplace listingsdisplayed on the camera enabled mobile device 130, in accordance with anexample embodiment. The screenshots may include a user status view 402,photos 404, multiple listings 406, and an item summary 408. The userstatus view 402 may include statistics for a particular user such asitems listed for sale as well as the items that the user is interestedin or is bidding bid on. As can be seen from the example user statusview 402, the user is currently “watching” 25 items and selling 7 items.Furthermore, the user has won 5 items he was bidding on was outbid for 2items. The photos 404 show images that may be taken by the cameraenabled mobile device 130 and are currently stored on the camera enabledmobile device 130 or in the user's draft area. The multiple listings 406shows items that may have been extracted from the images 208 and taggedwith the data received from the user 140. The items may be extractedfrom multiple images or from one image, taken in one or more sessions.The item summary 408 shows the summary of one item shown in the multiplelistings 406.

FIG. 5 illustrates an example method 500 for marketplace listings usingthe camera enabled mobile device 130. The method 500 may be performed byprocessing logic that may comprise hardware (e.g., dedicated logic,programmable logic, microcode, etc.), software (such as run on a generalpurpose computer system or a dedicated machine), or a combination ofboth in one example embodiment, the processing logic resides at themultiple listing engine 120, illustrated in FIG. 2. The method 500 maybe performed by the various example modules discussed above withreference to FIG. 2. Each of these modules may comprise processinglogic.

As shown in FIG. 5, the method 500 may commence at operation 502, withthe communication module 202 receiving a request from the camera enabledmobile device 130 to list one or more sale items 204 on the marketplace150. At operation 504, the media receiving module 122 of the multiplelisting engine 120 may receive images of the one or more sale items 204.At operation 506, the data receiving module 126 may receive dataassociated with the one or more sale items 204, and at operation 508,the processing module 124 may list the one or more sale items 204 basedon the data received at operation 506. A further example method formarketplace listings using a camera enabled mobile device 130 isdescribed with reference to FIG. 6 and FIG. 7.

FIG. 6 is the first part of a flow chart illustrating a further method600 for marketplace listings using a camera enabled mobile device, inaccordance with an example embodiment. As shown in FIG. 6, the method600 may commence at operation 602 with the communication module 202receiving a request from the camera enabled mobile device 130 to listone or more sale items 204. At operation 604, the media receiving module122 may receive images of the one or more sale items 204. The imagesreceived by the media receiving module 122 may be taken by the cameraenabled mobile device 130. The processing module 124 may need data totag the sale items 204. The data may be supplied by a user or derivedusing some predetermined methods. The user may be explicitly asked toprovide the data. Thus, at operation 606, the processing module 124 mayprovide the user 140 with predetermined selection options. For example,a message may be displayed asking the user whether an item shown in theimage is a certain product. Other questions may be asked.

At the decision block 608, it may be determined by the processing module124 whether or not the user 140 selects an offered option. If the user140 selects an option, the processing module 124 may receive the dataprovided by the user 140 at operation 614. The data may be provided viathe GUI of the camera enabled mobile device 130 using various supportedgestures. The GUI of the camera enabled mobile device 130 may supportdirect manipulations including one or more of the following gestures:multi-touching, swiping, tapping, pinching, and reverse pinching. If, onthe other hand, it is determined at decision block 608 that the user 140did not select any options, the processing module 124 may receive, atoperation 610, an automatically-generated minimal description of thesale items 204. At operation 612, the processing module 124 may generatedefault data based on the minimal description received at operation 610.

FIG. 7 is the second part of a flow chart illustrating the furthermethod 600 for marketplace listings using the camera enabled mobiledevice 130, in accordance with an example embodiment. As shown in FIG.7, the method 600 may continue with creating tags describing the saleitems 204 at operation 616. The flow may proceed to decision block 618where it may be determined whether the data needs to be saved to apersonal draft area before the items are listed on a marketplace. If itis determined that the data needs to be saved to the draft area, thedata may be by saved at operation 620. This approach may be taken whenit is determined that an intermediary step of compiling the images andthe data in a draft area may be needed. If, on the other hand, it isdetermined that the data does not need to be saved, the method mayproceed to list simultaneously the one or more sale items 204 based onthe data available at operation 622. Thereafter, the imagescorresponding to the one or more sale items 204 may be listed alongsidethe sale items 204 at operation 624. It will be noted that the approachdescribed is not limited to photographs and may extend to video andaudio.

Proceeding to FIG. 8, the example computer system 800 includes aprocessor or multiple processors 802 (e.g., a central processing unit(CPU), a graphics processing unit (GPU), or both), a main memory 804 anda static memory 806, which communicate with each other via a bus 808.The computer system 800 may further include a video display unit 810(e.g., a liquid crystal display (LCD) or a cathode ray tube (CRT)). Thecomputer system 800 may also include an alphanumeric input device 812(e.g., a keyboard), a cursor control device 814 (e.g., a mouse), a diskdrive unit 816, a signal generation device 818 (e.g., a speaker) and anetwork interface device 820.

The disk drive unit 816 includes a computer-readable medium 822, onwhich is stored one or more sets of instructions and data structures(e.g., instructions 824) embodying or utilized by any one or more of themethodologies or functions described herein. The instructions 824 mayalso reside, completely or at least partially, within the main memory804 and/or within the processors 802 during execution thereof by thecomputer system 800. The main memory 804 and the processors 802 may alsoconstitute machine-readable media.

The instructions 824 may further be transmitted or received over anetwork 826 via the network interface device 820 utilizing any one of anumber of well-known transfer protocols (e.g., Hyper Text TransferProtocol (HTTP)).

While the computer-readable medium 822 is shown in an example embodimentto be a single medium, the term “computer-readable medium” should betaken to include a single medium or multiple media (e.g., a centralizedor distributed database and/or associated caches and servers) that storethe one or more sets of instructions. The term “computer-readablemedium” shall also be taken to include any medium that is capable ofstoring, encoding, or carrying a set of instructions for execution bythe machine and that causes the machine to perform any one or more ofthe methodologies of the present application, or that is capable ofstoring, encoding, or carrying data structures utilized by or associatedwith such a set of instructions. The term “computer-readable medium”shall accordingly be taken to include, but not be limited to,solid-state memories, optical and magnetic media, and carrier wavesignals. Such media may also include, without limitation, hard disks,floppy disks, flash memory cards, digital video disks, random accessmemory (RAMs), read only memory (ROMs), and the like.

The example embodiments described herein may be implemented in anoperating environment comprising software installed on a computer, inhardware, or in a combination of software and hardware.

Thus, systems and methods for marketplace listings using a cameraenabled mobile device have been described. Although embodiments havebeen described with reference to specific example embodiments, it willbe evident that various modifications and changes may be made to theseembodiments without departing from the broader spirit and scope of thesystem and method described herein. Accordingly, the specification anddrawings are to be regarded in an illustrative rather than a restrictivesense.

1. A computer-implemented method, comprising: receiving a request via acamera enabled mobile device to list one or more sale items; receivingan image depicting a plurality of potential sale items, the image beingtaken by the camera enabled mobile device; performing image recognition,by at least one processor, on the received image to identify the one ormore sale items from the plurality of potential sale items within thereceived image; automatically generating, by the at least one processor,a set of descriptive data for the one or more sale items based on theidentification of the one or more sale items depicted in the image; andlisting the one or more sale items on a marketplace using the image andthe automatically generated set of descriptive data.
 2. Thecomputer-implemented method of claim 1, wherein the received imageincludes at least one barcode for the one or more sale items.
 3. Thecomputer-implemented method of claim 2, wherein performing imagerecognition on the received image includes decoding the at least one barcode for the one or more sale items.
 4. The computer-implemented methodof claim 3, wherein automatically generating a set of descriptive dataincludes using the at least one decoded bar code for the one or moresale items to provide descriptive data for each of the corresponding oneor more items.
 5. The computer-implemented method of claim 1, whereinperforming image recognition on the received image includes: extractingfrom the image the one or more sale items; and classifying the one ormore sale items.
 6. The computer-implemented method of claim 1, whereinlisting the one or more sale items includes: associating the one or moresale items with corresponding descriptive data from the set ofdescriptive data; and listing the one or more sale items accompaniedwith the corresponding descriptive data on the marketplace.
 7. Thecomputer-implemented method of claim 1, further comprising querying auser via a user interface of the camera enabled mobile device foradditional descriptive data for the one or more items depicted in theimage.
 8. The computer-implemented method of claim 7, wherein queryingthe user for the additional descriptive data includes querying the userto confirm that an item shown in the image is a certain product.
 9. Thecomputer-implemented method of claim 1, further including: generating adraft listing for each sale item of the one or more sale itemsidentified within the received image, the draft listing including thecorresponding set of descriptive data describing the sale item of theone or more sale items.
 10. The computer-implemented method of claim 9,further including: sending, to the mobile device, a list of draftlistings; receiving, from the mobile device, a selection of draftlistings from the list of draft listings; and wherein the listing of theone or more sale items includes publishing at least a portion of thedraft listings based on the selection received from the mobile device.11. A system, comprising: at least one processor; a communicationmodule, implemented by the at least one processor, configured to receivea request via a camera enabled mobile device to list one or more saleitems; and a multiple listing engine, implemented by the at least oneprocessor, configured to: receive an image depicting a plurality ofpotential sale items, the image being taken by the camera enabled mobiledevice; perform image recognition on the received image to identify theone or more sale items from the plurality of potential sale items withinthe received image; automatically generate a set of descriptive data forthe one or more sale items based on the identification of the one ormore sale items depicted in the image; and list the one or more saleitems on a marketplace using the image and the automatically generatedset of descriptive data.
 12. The system of claim 11, wherein the imagereceived includes at least one barcode for the one or more sale items.13. The system of claim 12, wherein the multiple listing engine isfurther configured to decode the at least one bar code for the one ormore sale items.
 14. The system of claim 13, wherein the multiplelisting engine is further configured to use the at least one decoded barcode for the one or more sale items to provide descriptive data for eachof the corresponding one or more items.
 15. The system of claim 11,wherein the multiple listing engine is configured to perform imagerecognition on the received image by: extracting from the image the oneor more sale items; and classifying the one or more sale items.
 16. Thesystem of claim 11, wherein the multiple listing engine is configured tolist the one or more sale items by: associating the one or more saleitems with corresponding descriptive data from the set of descriptivedata; and listing the one or more sale items accompanied with thecorresponding descriptive data on the marketplace.
 17. The system ofclaim 11, wherein the multiple listing engine is further configured toquery a user via a user interface of the camera enabled mobile devicefor additional descriptive data for the one or more items depicted inthe image.
 18. The system of claim 17, wherein the multiple listingengine is further configured to query the user to confirm that an itemshown in the image is a certain product.
 19. A computer-readable storagemedium storing a set of instructions that, when executed by one or moreprocessors, causes the one or more processors to perform the followingoperations comprising: receiving a request via a camera enabled mobiledevice to list one or more sale items; receiving an image depicting aplurality of potential sale items, the image being taken by the cameraenabled mobile device; performing image recognition on the receivedimage to identify the one or more sale items from the plurality ofpotential sale items within the received image; automatically generatinga set of descriptive data for the one or more sale items based on theidentification of the one or more sale items depicted in the image; andlisting the one or more sale items on a marketplace using the image andthe automatically generated set of descriptive data.
 20. Thecomputer-readable storage medium of claim 19, wherein the received imageincludes at least one barcode for the one or more sale items.
 21. Thecomputer-readable storage medium of claim 20, wherein performing imagerecognition on the received image includes decoding the at least one barcode for the one or more sale items.
 22. The computer-readable storagemedium of claim 21, wherein automatically generating the set ofdescriptive data includes using the at least one decoded bar code forthe one or more sale items to provide descriptive data for each of thecorresponding one or more items.